perm filename DDT.XGP[HAL,HE] blob sn#153463 filedate 1975-04-10 generic text, type T, neo UTF8
/FONT#0=BASL30/FONT#1=BASI30/FONT#2=BASB30/FONT#3=NGR40
␈↓␈↓↓␈↓α␈↓β
␈↓ ↓H
␈↓β␈↓ β
STANFORD ARTIFICIAL INTELLIGENCE LABORATORY
␈↓ ↓H

␈↓ ↓H

␈↓ ↓H
␈↓β␈↓ ¬∂DDT FOR THE PDP-11
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ε⊂Jeff Rubin
␈↓ ↓H

␈↓ ↓H

␈↓ ↓H
␈↓ ↓HDDT␈αis␈αa␈αsymbolic␈αdebugger␈αwritten␈αfor␈αthe␈αPDP-11.␈αIts␈αcommand␈αstructure␈αis␈αquite␈αsimilar␈αto␈αthat
␈↓ ↓H
␈↓ ↓Hof␈αPDP-10␈αDDT␈αexcept␈αwhere␈αmachine␈αdifferences␈αdictated␈αotherwise.␈αThe␈αcurrent␈αversion␈αof␈αDDT
␈↓ ↓H
␈↓ ↓Hruns␈αon␈αa␈αPDP-11/45␈αwith␈αa␈αfloating␈αpoint␈αprocessor␈α(FPP)␈αbut␈αwith␈αno␈αmemory␈αmanagement␈αunit.
␈↓ ↓H
␈↓ ↓HIt␈αis␈α
expected␈α
that␈α
DDT␈α
will␈α
be␈α
revised␈α
when␈α
the␈α
page␈α
map␈α
is␈α
installed␈α
on␈α
the␈α
11/45␈α
and␈α
also␈α
for␈α
the
␈↓ ↓H
␈↓ ↓H11/40␈α
which␈α
will␈α
come␈α
with␈α
the␈α
KL-10.␈α
All␈α
numbers␈α
in␈α
this␈α
manual␈α
are␈α
assumed␈α
to␈α
be␈αin␈αdecimal
␈↓ ↓H
␈↓ ↓Hunless␈α∩otherwise␈α∩indicated.␈α∩The␈α∩letter␈α∩$␈α∩will␈α∩be␈α⊃used␈α⊃indicate␈α⊃␈↓↓alt-mode␈↓␈α⊃unless␈α⊃the␈α⊃text␈α⊃specifies
␈↓ ↓H
␈↓ ↓Hdifferently.␈αThe␈αcharacter␈α↑␈αwill␈αbe␈αused␈αdirectly␈αin␈αfront␈αof␈αan␈αuppercase␈αletter␈αto␈αindicate␈αthat␈αthat
␈↓ ↓H
␈↓ ↓Hletter␈αshould␈αbe␈αtyped␈αwith␈αthe␈α␈↓↓control␈↓␈αkey␈αheld␈αdown.␈α{␈αand␈α}␈αare␈αused␈αas␈αmeta␈αparentheses␈αand␈αare
␈↓ ↓H
␈↓ ↓Hnot␈α
meant␈α
to␈α
be␈α
typed␈α
in␈α
or␈α
typed␈α
out.
␈↓ ↓H

␈↓ ↓H

␈↓ ↓H
␈↓α1  Examining and Altering Locations
␈↓ ↓H

␈↓ ↓H
␈↓α1.1  Expressions
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HDDT␈α
parses␈α
arithmetic␈α
expressions␈α
in␈α
either␈α
integer␈α
or␈α
floating␈α
point.␈α
Mixed␈α
mode␈α
is␈α
not␈αallowed.
␈↓ ↓H
␈↓ ↓HExpressions␈α∞may␈α∞be␈α∞fully␈α∞parenthesized␈α
and␈α
are␈α
interpreted␈α
using␈α
a␈α
strict␈α
precedence␈α
scheme.␈α
The
␈↓ ↓H
␈↓ ↓Hoperators␈α
are:
␈↓ ↓H
␈↓↓
␈↓ ↓H
Precedence␈↓ αhOperator␈↓ ∧λ␈↓ ∧XOperation␈↓
␈↓ ↓H

␈↓ ↓H
   0␈↓ α_␈↓ αh   ,,␈↓ β8␈↓ ∧λhigh byte,,low byte
␈↓ ↓H
   2␈↓ α_␈↓ αh+ or space␈↓ ∧λbinary addition
␈↓ ↓H
   2␈↓ α_␈↓ αh   -␈↓ β8␈↓ ∧λbinary subtraction
␈↓ ↓H
   3␈↓ α_␈↓ αh   *␈↓ β8␈↓ ∧λbinary multiplication
␈↓ ↓H
   3␈↓ α_␈↓ αh   !␈↓ β8␈↓ ∧λbinary division
␈↓ ↓H
   4␈↓ α_␈↓ αh   -␈↓ β8␈↓ ∧λunary minus
␈↓ ↓H

␈↓ ↓H
␈↓ ↓H+␈α
used␈α
as␈α
a␈α
unary␈α
operator␈α
is␈α
ignored.␈α
Operations␈α
associate␈α
to␈α
the␈α
left␈αwhere␈αthe␈αprecedence␈αis␈αthe
␈↓ ↓H
␈↓ ↓Hsame␈α
for␈α
both␈α
operations.␈α
Operands␈α
may␈α
be␈αinteger,␈αfloating␈αpoint␈αor␈αtext␈αconstants,␈αsymbol␈αnames
␈↓ ↓H
␈↓ ↓Hor␈α
special␈α
symbols.
␈↓ ↓H

␈↓ ↓H
␈↓α1.1.1  Integers
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HIntegers␈αare␈αassumed␈αto␈αbe␈αin␈αoctal␈αunless␈αthey␈αare␈αimmediately␈α
followed␈α
by␈α
a␈α
decimal␈α
point.␈α
Integers
␈↓ ↓H
␈↓ ↓Hmust␈α
fit␈α
into␈α
a␈α
16␈α
bit␈α
field.
␈↓ ↓H

␈↓ ↓H
␈↓α1.1.2  Floating Point Numbers
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HDDT␈α
accumulates␈α
floating␈α
point␈α
numbers␈α
in␈αdouble␈αprecision.␈αFloating␈αpoint␈αis␈αindicated␈αeither␈αby
␈↓ ↓H
␈↓ ↓Hhaving␈α⊃digits␈α⊃␈↓↓both␈α⊃before␈α⊃and␈α⊃after␈↓␈α⊃a␈α⊃decimal␈α⊂point␈α⊂or␈α⊂by␈α⊂using␈α⊂the␈α⊂standard␈α⊂E␈α⊂notation.␈α⊂In␈α⊂E
␈↓ ↓H
␈↓ ↓Hnotation,␈α
there␈α
must␈α
first␈α
be␈α
an␈α
integer␈α
optionally␈α
followed␈αby␈αa␈αdecimal␈αpoint␈αand␈αanother␈αinteger
␈↓ ↓H
␈↓ ↓Hfollowed␈αimmediately␈αby␈αan␈αE␈α
and␈α
an␈α
(optionally␈α
signed)␈α
integer␈α
power␈α
of␈α
10␈α
to␈α
scale␈α
the␈α
number␈α
by.
␈↓ ↓H
␈↓ ↓HAll␈α
the␈α
integers␈α
in␈α
a␈αfloating␈αpoint␈αnumber␈αare␈αassumed␈αto␈αbe␈αdecimal.␈αThe␈αfollowing␈αare␈αall␈αvalid
␈↓ ↓H
␈↓ ↓Hfloating␈α
point␈α
numbers:
␈↓ ↓H

␈↓ ↓H
␈↓ α_0.12   105.0   3.14E-6   0.21718E1   105.69E+4
␈↓ ↓H

␈↓ ↓H
␈↓α1.1.3  Text Constants
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HThere␈α∞are␈α∞three␈α
types␈α
of␈α
text␈α
constants:␈α
single␈α
character␈α
ascii,␈α
double␈α
character␈α
ascii␈α
and␈α
radix␈α
50.
␈↓ ↓H
␈↓ ↓H'␈↓↓{char}␈↓␈α
has␈α
the␈α
value␈α
of␈α
the␈α
ascii␈α
character␈α
␈↓↓char␈↓.␈α
"␈↓↓{char1}{char2}␈↓␈αhas␈αthe␈αascii␈αvalue␈αof␈α␈↓↓char1␈↓␈αin␈αthe
␈↓ ↓H
␈↓ ↓Hlow␈αbyte␈αand␈αthe␈αascii␈αvalue␈αof␈α␈↓↓char2␈↓␈αin␈αthe␈αhigh␈αbyte.␈α&␈↓↓{char1}{char2}{char3}␈α␈↓␈αhas␈αthe␈αvalue␈αof␈αthe
␈↓ ↓H
␈↓ ↓Hradix␈α∩50␈α∩equivalent␈α∩of␈α∩the␈α∩symbol␈α⊃␈↓↓{char1}{char2}{char3}.␈α⊃␈↓If␈α⊃it␈α⊃is␈α⊃desired␈α⊃to␈α⊃not␈α⊃have␈α⊃all␈α⊃three
␈↓ ↓H
␈↓ ↓Hcharacters␈αin␈αthe␈αvalue␈α
then␈α
fewer␈α
characters␈α
may␈α
be␈α
given␈α
as␈α
long␈α
as␈α
they␈α
are␈α
followed␈α
by␈α
some␈α
non
␈↓ ↓H
␈↓ ↓Hradix␈α50␈αcharacter.␈αIn␈αthis␈αcase␈αthe␈αresulting␈αradix␈α50␈αvalue␈αwill␈αbe␈α
left␈α
justified␈α
within␈α
a␈α
word.␈α
The
␈↓ ↓H
␈↓ ↓Hfollowing␈α
table␈α
lists␈α
the␈α
correspondence␈α
between␈α
ascii␈α
and␈α
radix␈α
50:
␈↓ ↓H
␈↓↓
␈↓ ↓H
␈↓ α_␈↓ αhASCII␈↓ ∧λ␈↓ ∧XRADIX 50 (in octal)␈↓
␈↓ ↓H

␈↓ ↓H
␈↓ α_␈↓ αhA - Z␈↓ ∧λ␈↓ ∧X␈↓ ∧X1 - 32
␈↓ ↓H
␈↓ α_␈↓ αh$ (dollar)␈↓ ∧λ␈↓ ∧X33
␈↓ ↓H
␈↓ α_␈↓ αh.␈↓ β8␈↓ ∧λ␈↓ ∧X34
␈↓ ↓H
␈↓ α_␈↓ αh%␈↓ β8␈↓ ∧λ␈↓ ∧X35
␈↓ ↓H
␈↓ α_␈↓ αh0 - 9␈↓ β8␈↓ ∧λ␈↓ ∧X36 - 47
␈↓ ↓H

␈↓ ↓H
␈↓α1.1.4  Symbols and Register Values
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HSymbols␈α
may␈α
be␈α
constructed␈α
with␈α
from␈α
1␈α
to␈α
6␈α
radix␈α
50␈α
characters.␈αThe␈αfirst␈αcharacter␈αof␈αa␈αsymbol
␈↓ ↓H
␈↓ ↓Hmay␈α⊃not␈α⊃be␈α⊃an␈α⊃integer␈α⊃and␈α⊃it␈α⊃may␈α⊃not␈α⊃be␈α⊃.␈α⊃if␈α⊃all␈α⊃the␈α⊃remaining␈α⊃characters␈α⊃are␈α⊂integers.␈α⊂DDT
␈↓ ↓H
␈↓ ↓Hmaintains␈αa␈αsymbol␈αtable␈αand␈αthe␈αsymbol␈αtyped␈αby␈αthe␈αuser␈αis␈αlooked␈αup␈αin␈αthis␈αtable.␈αIf␈αit␈αis␈αfound,
␈↓ ↓H
␈↓ ↓Hthen␈α∞the␈α∞corresponding␈α∞value␈α∞from␈α∞the␈α∞table␈α∞is␈α∞used␈α∞in␈α
the␈α
expression␈α
evaluation.␈α
If␈α
not␈α
then␈α
the
␈↓ ↓H
␈↓ ↓Hmessage␈α?U?␈αis␈αtyped␈αand␈αthe␈αcurrent␈αexpression␈αevaluation␈αis␈αaborted.␈αSymbol␈αvalues␈αmay␈αbe␈α
either
␈↓ ↓H
␈↓ ↓Hinteger␈α
or␈α
register␈α
values.␈α
A␈α
register␈αvalue,␈αwhen␈αused␈αin␈αan␈αinteger␈αexpression,␈αcauses␈αa␈αflag␈αto␈αbe
␈↓ ↓H
␈↓ ↓Hset␈α⊂so␈α⊂that␈α∂the␈α∂resulting␈α∂expression␈α∂value␈α∂is␈α∂considered␈α∂a␈α∂register␈α∂value.␈α∂Register␈α∂values␈α∂must␈α∂be
␈↓ ↓H
␈↓ ↓Hbetween␈α0␈αand␈α7␈αinclusive.␈αRegister␈αvalues␈αcan␈αonly␈αbe␈αtyped␈α
in␈α
as␈α
a␈α
result␈α
of␈α
typing␈α
a␈α
symbol␈α
which
␈↓ ↓H
␈↓ ↓Hhas␈α∂a␈α∂register␈α∂value.␈α∂See␈α∂section␈α∂1.1.5␈α∂on␈α∂special␈α∂symbols␈α∞for␈α∞a␈α∞description␈α∞of␈α∞predefined␈α∞symbols
␈↓ ↓H
␈↓ ↓Hwhich␈αhave␈αregister␈αvalues.␈αSymbols␈αmay␈αbe␈αdefined␈αin␈αtwo␈αways.␈αFirst,␈αtyping␈α
␈↓↓FOO:␈↓␈α
defines␈α
␈↓↓FOO␈↓␈α
to
␈↓ ↓H
␈↓ ↓Hhave␈α∞the␈α∞value␈α
of␈α
.␈α
(see␈α
section␈α
1.1.5␈α
on␈α
special␈α
symbols).␈α
If␈α
.␈α
is␈α
a␈α
register␈α
value␈α
then␈α
␈↓↓FOO␈↓␈α
will␈α
be
␈↓ ↓H
␈↓ ↓Hdefined␈α
as␈α
a␈α
register␈α
symbol.␈α
The␈α
second␈α
way␈α
is␈α
to␈α
type␈α
␈↓↓val<FOO:␈↓␈α
which␈α
defines␈α␈↓↓FOO␈↓␈αto␈αhave␈αthe
␈↓ ↓H
␈↓ ↓Hvalue␈α␈↓↓val␈↓.␈αAgain,␈αif␈α␈↓↓val␈↓␈αis␈αa␈αregister␈αvalue␈αthen␈α␈↓↓FOO␈↓␈αwill␈αalso␈αbe␈α
a␈α
register␈α
value.␈α
DDT␈α
uses␈α
symbols
␈↓ ↓H
␈↓ ↓Hfor␈α∪typing␈α∪out␈α∪values␈α∪whenever␈α∪possible␈α∪(see␈α∪section␈α∪1.2.2␈α∪on␈α∩typeout␈α∩modes).␈α∩Sometimes␈α∩it␈α∩is
␈↓ ↓H
␈↓ ↓Hundesirable␈αfor␈αcertain␈αsymbols␈αto␈αbe␈αused␈αon␈αtypeout.␈αIt␈αis␈αpossible␈αto␈α␈↓↓half-kill␈↓␈αthese␈αsymbols,␈αwhich
␈↓ ↓H
␈↓ ↓Hleaves␈α∞their␈α∞values␈α∞alone␈α∞but␈α∞marks␈α∞them␈α∞so␈α∞that␈α∞DDT␈α∞will␈α
never␈α
use␈α
them␈α
for␈α
typeout␈α
purposes.
␈↓ ↓H
␈↓ ↓H␈↓↓FOO$K␈↓␈α
half-kills␈α
␈↓↓FOO␈↓.
␈↓ ↓H

␈↓ ↓H
␈↓α1.1.5  Special Symbols
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HCertain␈α
symbols␈α
have␈α
been␈α
predefined␈α
in␈α
DDT.␈α
They␈α
are:
␈↓ ↓H

␈↓ ↓H
␈↓ α_.␈↓ αh␈↓ β8␈↓ ∧λ␈↓ ∧λcurrent␈α
location␈α
counter␈α
(see␈α
section␈α
1.2␈α
on␈α
opening␈α
locations)
␈↓ ∧λ
␈↓ ↓H␈↓ α_$Q␈↓ αh␈↓ β8␈↓ ∧λlast␈α
value␈α
typed␈α
in␈α
or␈α
out
␈↓ ∧λ
␈↓ ↓H␈↓ α_$0Q␈↓ αh␈↓ β8␈↓ ∧λlow␈α
byte␈α
of␈α
$Q␈α
if␈α
it␈α
was␈α
an␈α
integer
␈↓ ∧λ
␈↓ ↓H␈↓ α_$1Q␈↓ αh␈↓ β8␈↓ ∧λsame␈α
as␈α
$0Q␈α
but␈α
the␈α
high␈α
byte
␈↓ ∧λ
␈↓ ↓H␈↓ α_$M␈↓ αh␈↓ β8␈↓ ∧λaddress␈α⊃within␈α⊃DDT␈α⊃where␈α⊃the␈α⊃search␈α⊃mask␈α⊃is␈α⊃stored␈α⊃(see␈α⊂section␈α⊂π␈α⊂on
␈↓ ∧λ
␈↓ ∧λsearches)
␈↓ ∧λ
␈↓ ↓H␈↓ α_%0 through %7␈↓ ∧λ␈↓ ∧λregister␈α
values␈α
0␈α
through␈α
7
␈↓ ∧λ
␈↓ ↓H
␈↓ ↓H
␈↓α1.1.6  Instruction Typein
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HAn␈αinstruction␈αmay␈αbe␈αtyped␈αin␈αinstead␈αof␈αan␈αexpression.␈αInstructions␈αare␈αtyped␈αin␈αthe␈αsame␈αway␈αas
␈↓ ↓H
␈↓ ↓Hin␈α⊂PALX␈α⊂with␈α⊂the␈α⊂exception␈α⊂of␈α⊂the␈α⊂condition␈α⊂code␈α⊂instructions.␈α⊂Any␈α⊂address␈α⊂or␈α⊂constant␈α∂in␈α∂an
␈↓ ↓H
␈↓ ↓Hinstruction␈αmay␈αbe␈αa␈αnormal␈αexpression.␈αThe␈αcondition␈αcode␈αinstructions␈αare␈αinput␈αby␈αtyping␈α␈↓↓CL␈↓␈αor
␈↓ ↓H
␈↓ ↓H␈↓↓SE␈↓␈α
followed␈α
by␈α
a␈α
space␈α
followed␈α
by␈α
the␈α
condition␈α
code␈α
letters␈α
to␈α
be␈α
set␈α
or␈α
cleared␈α
(␈↓↓C,␈α
Z,␈α
N␈α
or␈α
V␈↓).
␈↓ ↓H

␈↓ ↓H
␈↓α1.2  Opening Locations
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HThe␈α
commands␈α
that␈α
open␈α
locations␈α
are␈α/␈α\␈α[␈αlinefeed␈αand␈αtab.␈αEach␈αcommand␈αsets␈αthe␈αvalue␈αof␈αthe
␈↓ ↓H
␈↓ ↓Hsymbol␈α.␈αto␈αthe␈αlocation␈αbeing␈αopened,␈αwhich␈αmay␈αbe␈αa␈αregister.␈αThe␈αlast␈αtwo,␈αlinefeed␈αand␈αtab,␈αhave
␈↓ ↓H
␈↓ ↓Hthe␈α∂ability␈α∂to␈α∂alter␈α∂locations␈α∂and␈α∂if␈α∂a␈α∂value␈α∂is␈α∞typed␈α∞in␈α∞front␈α∞of␈α∞them␈α∞that␈α∞value␈α∞is␈α∞stored␈α∞in␈α∞the
␈↓ ↓H
␈↓ ↓Hcurrently␈α
open␈α
location,␈α
if␈α
any.
␈↓ ↓H

␈↓ ↓H
␈↓α1.2.1  /  \ and [
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HThree␈αcommands␈αfor␈αexamining␈αcore␈αlocations␈αare␈α␈↓↓addr␈↓/␈↓↓␈αaddr␈↓[␈αand␈α␈↓↓addr␈↓\.␈αThese␈α
commands␈α
all␈α
open
␈↓ ↓H
␈↓ ↓Hlocation␈α
␈↓↓addr␈↓␈α
and␈α
type␈α
out␈α
the␈α
contents␈α
of␈α
the␈α
byte␈α
or␈α
word␈α
at␈α
␈↓↓addr␈↓␈α
in␈α
some␈αmode.␈αThere␈αare␈αtwo
␈↓ ↓H
␈↓ ↓Hmodes␈α⊂in␈α⊂which␈α⊂a␈α⊂location␈α⊂can␈α⊂be␈α⊂open:␈α⊂␈↓↓word␈α⊂mode␈↓␈α⊂and␈α∂␈↓↓byte␈α∂mode␈↓.␈α∂Any␈α∂command␈α∂that␈α∂opens␈α∂a
␈↓ ↓H
␈↓ ↓Hlocation␈α
in␈α
byte␈α
mode␈α
will␈α
type␈α
the␈α
contents␈α
of␈α
the␈α
open␈α
byte␈α
as␈α
an␈α
unsigned␈α
integer.␈α
Any␈αaddress
␈↓ ↓H
␈↓ ↓H(odd␈α∞or␈α∞even)␈α∞can␈α∞be␈α∞opened␈α
in␈α
byte␈α
mode.␈α
The␈α
\␈α
command␈α
always␈α
opens␈α
locations␈α
in␈α
byte␈α
mode.
␈↓ ↓H
␈↓ ↓HThe␈α∂[␈α∂command␈α∂opens␈α∂the␈α∂location␈α∂in␈α∂word␈α∂mode␈α∂and␈α∂types␈α∂out␈α∞the␈α∞contents␈α∞of␈α∞the␈α∞word␈α∞as␈α∞an
␈↓ ↓H
␈↓ ↓Hunsigned␈α
integer.␈α
If␈α
the␈α
location␈α
was␈α
at␈α
an␈α
odd␈αaddress␈αthen␈αthe␈αcommand␈αacts␈αas␈αif␈αit␈αwere␈α␈↓↓addr␈↓\.
␈↓ ↓H
␈↓ ↓HThe␈α/␈αcommand␈αalso␈αopens␈αthe␈αlocation␈αin␈αword␈αmode,␈αbut␈αit␈αtypes␈αout␈αthe␈αcontents␈αof␈αthe␈αword␈αin
␈↓ ↓H
␈↓ ↓Hthe␈αcurrent␈αtypeout␈αmode␈α(see␈αsection␈α1.2.2␈αon␈αtypeout␈α
modes).␈α
It␈α
also␈α
acts␈α
like␈α
\␈α
if␈α
the␈α
location␈α
is␈α
odd.
␈↓ ↓H
␈↓ ↓HOnce␈αa␈αlocation␈α
is␈α
opened␈α
it␈α
is␈α
enabled␈α
for␈α
having␈α
things␈α
stored␈α
into␈α
it.␈α
The␈α
location␈α
stays␈α
open␈α
until
␈↓ ↓H
␈↓ ↓Ha␈α
command␈α
is␈α
executed␈α
which␈α
specifically␈α
closes␈α
the␈α
location␈α
(see␈α
section␈α
1.2.4␈α
on␈α
altering␈α
locations).
␈↓ ↓H

␈↓ ↓H
␈↓ ↓HThese␈α⊃three␈α⊃commands␈α⊃may␈α⊃also␈α⊂be␈α⊂executed␈α⊂without␈α⊂a␈α⊂preceding␈α⊂argument,␈α⊂in␈α⊂which␈α⊂case␈α⊂the
␈↓ ↓H
␈↓ ↓Hlocation␈αthat␈αis␈αopened␈αis␈αthe␈αvalue␈αthat␈αwas␈αlast␈αtyped␈αout␈αas␈αthe␈αresult␈αof␈αopening␈αsome␈αlocation.␈αIf
␈↓ ↓H
␈↓ ↓Hthat␈αopen␈αlocation␈αwas␈αtyped␈αas␈αan␈α
instruction,␈α
then␈α
the␈α
new␈α
location␈α
to␈α
be␈α
opened␈α
is␈α
the␈α
last␈α
address
␈↓ ↓H
␈↓ ↓Hreferenced␈α
by␈α
that␈α
instruction.
␈↓ ↓H

␈↓ ↓H
␈↓ ↓HThere␈αare␈αseveral␈αother␈αcommands␈αwhich␈αopen␈αlocations,␈αbut␈αthese␈αwill␈αbe␈αdiscussed␈αin␈αsection␈α1.2.4
␈↓ ↓H
␈↓ ↓Hon␈α
altering␈α
locations.
␈↓ ↓H

␈↓ ↓H
␈↓α1.2.2  Typeout Modes
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HThe␈αform␈αin␈α
which␈α
an␈α
even␈α
addressed␈α
location␈α
is␈α
typed␈α
by␈α
the␈α
/␈α
command␈α
depends␈α
upon␈α
the␈α
typeout
␈↓ ↓H
␈↓ ↓Hmode.␈α
The␈α
typeout␈α
modes␈α
are:
␈↓ ↓H
␈↓↓
␈↓ ↓H
  Mode␈↓ αh␈↓ β8␈↓ ∧λ␈↓ ∧XDescription
␈↓ ↓H
␈↓
␈↓ ↓H
constants␈↓ αh␈↓ β8   ␈↓ βVsigned␈α
16␈α
bit␈α
number
␈↓ βV
␈↓ ↓Hsymbolic␈↓ βV(non␈α
half-killed)␈α
symbol␈α
plus␈α
numeric␈α
offset␈α
(like␈α
FOO+12)
␈↓ βV
␈↓ ↓Hbyte␈↓ βVunsigned␈α
8␈α
bit␈α
number
␈↓ βV
␈↓ ↓Hhalfword␈↓ βVhigh␈α
byte,,low␈α
byte␈α
both␈α
as␈α
unsigned␈α
8␈α
bit␈α
numbers
␈↓ βV
␈↓ ↓Hfloating␈↓ βVthis␈α
and␈α
the␈α
next␈α
location␈α
(or␈α
the␈αnext␈αthree)␈αare␈αtyped␈αas␈αa␈αsingle␈α(or␈αdouble)
␈↓ βV
␈↓ βVprecision␈α
floating␈α
point␈α
number
␈↓ βV
␈↓ ↓Htext␈↓ βVascii␈α
and␈α
radix␈α
50␈α
characters
␈↓ βV
␈↓ ↓Hinstruction␈↓ βVthis␈αlocation␈αand␈αthose␈αfollowing␈αthat␈αmake␈αup␈αthe␈αinstruction␈αare␈αtyped␈αout␈αas
␈↓ βV
␈↓ βVan␈α
instruction␈α
(floating␈α
point␈α
instructions␈α
optional)
␈↓ βV
␈↓ ↓H
␈↓ ↓H
␈↓ ↓HWithin␈α
these␈α
modes␈α
there␈α
are␈α
the␈α
following␈α
submodes:
␈↓ ↓H

␈↓ ↓H
octal/decimal␈↓ βVthe␈αnumeric␈αparts␈αof␈αall␈αinteger␈αtypeouts␈α
(except␈α
in␈α
a␈α
floating␈α
point␈α
number)␈α
are
␈↓ βV
␈↓ βVcontrolled␈α
by␈α
this␈α
submode
␈↓ βV
␈↓ ↓Habsolute/relative␈↓ βVin␈α
absolute␈α
mode␈α
no␈α
symbols␈α
are␈α
typed␈α
out
␈↓ βV
␈↓ ↓Hfloating double␈↓ βVin␈α∂this␈α∂submode,␈α∂floating␈α∂point␈α∞typeout␈α∞types␈α∞four␈α∞words␈α∞in␈α∞double␈α∞precision;
␈↓ βV
␈↓ βVthis␈α∂submode␈α∂also␈α∂controls␈α∂how␈α∂many␈α∂words␈α∂are␈α∞stored␈α∞in␈α∞a␈α∞location␈α∞when␈α∞a
␈↓ βV
␈↓ βVfloating␈α
point␈α
number␈α
is␈α
stored␈α
(see␈α
section␈α
1.2.4␈α
on␈α
altering␈α
locations)
␈↓ βV
␈↓ ↓Hfloating instruction␈↓ βVin␈αthis␈αsubmode␈αof␈αinstruction␈αmode␈αfloating␈αpoint␈αinstructions␈α
are␈α
typed␈α
rather
␈↓ βV
␈↓ βVthan␈α
negative␈α
numbers
␈↓ βV
␈↓ ↓H
␈↓ ↓H
␈↓ ↓HFor␈αeach␈αof␈αthe␈αabove␈αmodes␈αexcept␈αfor␈αthe␈αfloating␈αpoint␈αsubmodes␈αthere␈αis␈αa␈αtemporary␈α
mode␈α
and
␈↓ ↓H
␈↓ ↓Ha␈αpermanent␈αmode.␈αThe␈αfloating␈αpoint␈αsubmodes␈αare␈αpermanent␈αonly.␈α
It␈α
is␈α
the␈α
temporary␈α
modes␈α
that
␈↓ ↓H
␈↓ ↓Hcontrol␈α⊃typeout.␈α⊃The␈α⊃permanent␈α⊃modes␈α⊃are␈α⊃copied␈α⊃into␈α⊃the␈α⊂temporary␈α⊂modes␈α⊂whenever␈α⊂carriage
␈↓ ↓H
␈↓ ↓Hreturn␈αis␈αtyped␈αor␈αwhen␈αDDT␈αis␈αentered␈αfrom␈αa␈αbreakpoint␈αor␈α
startup.␈α
Corresponding␈α
to␈α
each␈α
of␈α
the
␈↓ ↓H
␈↓ ↓Hmodes␈α
is␈α
a␈α
letter.␈α
The␈α
command␈α
$${␈↓↓letter␈↓}␈α
sets␈α
the␈α
corresponding␈αtemporary␈α␈↓↓and␈↓␈αpermanent␈αmodes.
␈↓ ↓H
␈↓ ↓HThe␈α∪command␈α∪${␈↓↓letter␈↓}␈α∪sets␈α∪the␈α∪temporary␈α∪mode␈α∪only.␈α∩The␈α∩single␈α∩$␈α∩commands␈α∩may␈α∩be␈α∩typed
␈↓ ↓H
␈↓ ↓Hanywhere␈αwithin␈αan␈αexpression,␈αwhile␈αthe␈αdouble␈α$␈αcommands␈αterminate␈αand␈αignore␈αany␈αexpression
␈↓ ↓H
␈↓ ↓Hthat␈α
might␈α
be␈α
in␈α
progress.␈α
The␈α
letters␈α
are␈α
as␈α
follows:
␈↓ ↓H
␈↓↓
␈↓ ↓H
␈↓ α_letter␈↓ αh␈↓ β8   function
␈↓ ↓H
␈↓
␈↓ ↓H
␈↓ α_  A␈↓ αh␈↓ β8␈↓ β8absolute␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  C␈↓ β8constants␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  D␈↓ β8decimal␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  F␈↓ β8floating␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  H␈↓ β8halfword␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  I␈↓ β8instructions␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  L␈↓ β8floating␈α
long␈α
(double␈α
precision)␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  O␈↓ β8octal␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  R␈↓ β8relative␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  S␈↓ β8symbolic␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_ nT␈↓ β8text␈α
mode,␈α
where␈α
n=5␈α
for␈α
radix␈α
50,␈α
n=7␈α
or␈α
absent␈α
for␈α
ascii
␈↓ β8
␈↓ ↓H␈↓ α_  V␈↓ β8floating␈α
instruction␈α
typeout␈α
mode
␈↓ β8
␈↓ ↓H␈↓ α_  Y␈↓ β8byte␈α
mode
␈↓ β8
␈↓ ↓H
␈↓ ↓H
␈↓α1.2.3  ← and @
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HThere␈αare␈α
two␈α
further␈α
commands␈α
which␈α
open␈α
locations.␈α
←␈α
is␈α
intended␈α
for␈α
opening␈α
the␈α
source␈α
location
␈↓ ↓H
␈↓ ↓Hof␈αthe␈αmost␈αrecently␈αtyped␈αout␈αbinary␈αinstruction.␈αFor␈αexample␈αif␈αthe␈αlast␈αthing␈αtyped␈αout␈αwas␈α␈↓↓MOV
␈↓ ↓H
␈↓ ↓HFOO,BAR␈↓␈αthen␈α←␈αwill␈αopen␈α␈↓↓FOO␈↓␈α(whereas␈α/␈αwill␈αopen␈α␈↓↓BAR␈↓).␈α@␈αcauses␈αthe␈αcontents␈αof␈αthe␈αPC␈αto␈αbe
␈↓ ↓H
␈↓ ↓Hthe␈α⊂location␈α⊂opened␈α∂and␈α∂it␈α∂sets␈α∂the␈α∂temporary␈α∂typeout␈α∂mode␈α∂to␈α∂instruction␈α∂mode.␈α∂It␈α∂is␈α∂useful␈α∂for
␈↓ ↓H
␈↓ ↓Hseeing␈α
what␈α
instruction␈α
will␈α
be␈α
executed␈α
next.
␈↓ ↓H

␈↓ ↓H
␈↓α1.2.4  Altering Locations: tab, linefeed and carriage return
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HOnce␈α
a␈α
location␈α
is␈α
opened␈α
it␈α
may␈α
be␈α
altered␈α
by␈α
depositing␈αa␈αnew␈αvalue␈αin␈αthat␈αlocation.␈αThere␈αare
␈↓ ↓H
␈↓ ↓Hthree␈α
commands␈α
used␈α
to␈α
alter␈α
locations,␈α
tab,␈α
linefeed␈α
and␈α
carriage␈α
return.␈αEach␈αof␈αthese␈αcommands
␈↓ ↓H
␈↓ ↓Hmay␈α
be␈α
preceded␈α
by␈α
a␈α
value␈α
which␈α
is␈αthen␈αdeposited␈αin␈αthe␈αcurrently␈αopen␈αlocation␈αif␈αthere␈αis␈αone.
␈↓ ↓H
␈↓ ↓HHow␈α
much␈α
is␈α
stored␈α
depends␈α
upon␈α
the␈α
mode␈α
in␈α
which␈α
the␈α
location␈α
is␈α
open␈α
and␈α
upon␈α
what␈α
value␈α
was
␈↓ ↓H
␈↓ ↓Htyped.␈αIf␈αthe␈αlocation␈αwas␈αopen␈αin␈αbyte␈αmode␈αthen␈αfloating␈αpoint␈αvalues␈αand␈αinstructions␈αmay␈αnot␈αbe
␈↓ ↓H
␈↓ ↓Hstored.␈αThe␈αvalue␈αthat␈αis␈αstored␈αwill␈αbe␈αdeposited␈αonly␈α
in␈α
the␈α
byte␈α
that␈α
is␈α
open,␈α
even␈α
if␈α
it␈α
is␈α
a␈α
register
␈↓ ↓H
␈↓ ↓Hopen␈αin␈αbyte␈αmode.␈αIf␈αthe␈αopen␈αlocation␈αis␈αa␈αregister␈αin␈αword␈αmode␈αthen␈αagain,␈αfloating␈αpoint␈αvalues
␈↓ ↓H
␈↓ ↓Hand␈αinstructions␈αcannot␈αbe␈αstored.␈αIf␈αa␈αfloating␈αpoint␈αvalue␈αis␈αbeing␈αstored␈αin␈α
word␈α
mode␈α
then␈α
either
␈↓ ↓H
␈↓ ↓Htwo␈αwords␈αor␈αfour␈αare␈αstored␈αdepending␈αupon␈αthe␈αstate␈αof␈αdouble␈αprecision␈αfloating␈αpoint␈αmode␈α(see
␈↓ ↓H
␈↓ ↓Hsection␈α∂1.2.2␈α∂on␈α∂typeout␈α∂modes).␈α∂An␈α∂instruction␈α∂that␈α∂is␈α∂being␈α∂stored␈α∂will␈α∂take␈α∂up␈α∂the␈α∂appropriate
␈↓ ↓H
␈↓ ↓Hnumber␈α
of␈α
words␈α(from␈αone␈αto␈αthree).␈αAfter␈αa␈αvalue␈αis␈αstored␈α(if␈αthere␈αwas␈αa␈αvalue␈αtyped)␈αthe␈αopen
␈↓ ↓H
␈↓ ↓Hlocation␈α
is␈α
then␈α
closed.
␈↓ ↓H

␈↓ ↓H
␈↓ ↓HCarriage␈α
return␈α
resets␈αthe␈αtemporary␈αtypeout␈αmodes␈αfrom␈αthe␈αpermanent␈αtypeout␈αmodes␈α(see␈αsection
␈↓ ↓H
␈↓ ↓H1.2.2␈α
on␈α
typeout␈α
modes).
␈↓ ↓H

␈↓ ↓H
␈↓ ↓HLinefeed␈αopens␈αa␈αnew␈αlocation␈αby␈αadding␈αan␈αappropriate␈αincrement␈αto␈αthe␈αvalue␈αof␈αthe␈α
symbol␈α
.␈α
and
␈↓ ↓H
␈↓ ↓Hopening␈α.␈αagain␈αin␈αthe␈αsame␈αmode␈αas␈αit␈αwas␈αopened␈αin␈αbefore.␈αThe␈αappropriate␈αvalue␈αis␈αdetermined
␈↓ ↓H
␈↓ ↓Hby␈αwhat␈αvalue␈αis␈αtyped␈αbefore␈αthe␈αlinefeed␈αand␈αwhat␈αmode␈αthe␈αlocation␈αwas␈αopen␈αin.␈αIf␈αthe␈αlocation
␈↓ ↓H
␈↓ ↓Hwas␈α∂open␈α∂in␈α∂byte␈α∂mode,␈α∂then␈α∂the␈α∂linefeed␈α∂increment␈α∂is␈α∂always␈α∂one,␈α∂that␈α∂is,␈α∂the␈α∞next␈α∞byte␈α∞will␈α∞be
␈↓ ↓H
␈↓ ↓Hopened.␈α
If␈α
the␈α
location␈α
was␈α
open␈α
in␈α
word␈α
mode,␈α
then␈αthe␈αincrement␈αdepends␈αupon␈αwhat␈αvalue␈αwas
␈↓ ↓H
␈↓ ↓Htyped␈α∀preceding␈α∀the␈α∀line-feed.␈α∀If␈α∀there␈α∀is␈α∀no␈α∪value,then␈α∪the␈α∪increment␈α∪is␈α∪two.␈α∪If␈α∪there␈α∪is␈α∪an
␈↓ ↓H
␈↓ ↓Hinstruction,␈αthen␈αthe␈αincrement␈αis␈αsuch␈αthat␈αthe␈αlocation␈αopened␈αis␈αthe␈αone␈αimmediately␈αfollowing␈α
the
␈↓ ↓H
␈↓ ↓Hstored␈αinstruction.␈αIf␈αthe␈αvalue␈αbeing␈αstored␈αis␈αa␈αfloating␈αpoint␈αnumber␈αthen␈αthe␈αincrement␈αis␈αtwo␈αif
␈↓ ↓H
␈↓ ↓Hdouble␈α
precision␈α
mode␈α
is␈α
off␈α
and␈α
four␈α
otherwise
␈↓ ↓H

␈↓ ↓H
␈↓ ↓HTab␈α∞opens␈α∞the␈α∞location␈α
whose␈α
address␈α
is␈α
the␈α
value␈α
stored␈α
in␈α
the␈α
previously␈α
open␈α
location␈α
(i.e.,␈α
the
␈↓ ↓H
␈↓ ↓Hlocation␈α
open␈α
just␈α
before␈α
the␈α
tab␈α
was␈α
typed).
␈↓ ↓H

␈↓ ↓H
␈↓α2 Program Execution and Control
␈↓ ↓H

␈↓ ↓H
2.1  Setting and Clearing Breakpoints
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HThere␈αare␈αseven␈αbreakpoints␈αwhich␈αmay␈αbe␈αset␈αin␈αa␈αprogram,␈αnumbered␈αfrom␈α1␈αto␈α7.␈αA␈αbreakpoint
␈↓ ↓H
␈↓ ↓Hmay␈αbe␈αset␈αat␈αa␈αlocation␈αby␈αtyping␈α
an␈α
expression␈α
for␈α
the␈α
address␈α
followed␈α
by␈α
an␈α
altmode,␈α
an␈α
optional
␈↓ ↓H
␈↓ ↓Hexpression␈α
in␈α
parentheses,␈α
an␈α
optional␈α
digit␈α
from␈α
1␈α
to␈α
7␈α
and␈α
the␈α
letter␈α
B.␈α
For␈α
example,
␈↓ ↓H
   ␈↓↓addr+4$B    base+2*index$3B    loop+4$(%4)5B␈↓
␈↓ ↓H
␈↓ ↓Hare␈α∂all␈α∞legal.␈α∞The␈α∞address␈α∞expression␈α∞specifies␈α∞where␈α∞the␈α∞breakpoint␈α∞is␈α∞to␈α∞be␈α∞placed.␈α∞The␈α∞digit,␈α∞if
␈↓ ↓H
␈↓ ↓Hsupplied␈αindicates␈αwhich␈αbreakpoint␈αnumber␈αshould␈αbe␈αused␈αfor␈αthis␈αbreakpoint.␈αThe␈αexpression␈αin
␈↓ ↓H
␈↓ ↓Hparentheses␈α⊂should␈α⊂be␈α⊂an␈α∂address␈α∂whose␈α∂contents␈α∂will␈α∂be␈α∂typed␈α∂out␈α∂in␈α∂the␈α∂current␈α∂typeout␈α∂mode
␈↓ ↓H
␈↓ ↓Hwhen␈αthe␈αbreakpoint␈αis␈αhit.␈αIf␈αno␈αdigit␈αis␈αgiven,␈αthen␈αDDT␈αwill␈αassign␈αa␈αbreakpoint␈αnumber␈αstarting
␈↓ ↓H
␈↓ ↓Hfrom␈α⊂1,␈α⊂using␈α⊂the␈α⊂first␈α∂breakpoint␈α∂number␈α∂that␈α∂is␈α∂not␈α∂in␈α∂use.␈α∂A␈α∂breakpoint␈α∂is␈α∂not␈α∂in␈α∂use␈α∂if␈α∂the
␈↓ ↓H
␈↓ ↓Haddress␈α∞at␈α∞which␈α
the␈α
breakpoint␈α
is␈α
set␈α
is␈α
zero.␈α
Therefore,␈α
the␈α
way␈α
to␈α
clear␈α
breakpoint␈α
␈↓↓n␈↓␈α
is␈α
to␈α
type
␈↓ ↓H
␈↓ ↓H␈↓↓0$nB␈↓␈α⊂which␈α⊂will␈α⊂set␈α⊂the␈α⊂address␈α⊂of␈α⊂breakpoint␈α⊂␈↓↓n␈↓␈α⊂to␈α⊂zero.␈α⊂The␈α⊂command␈α⊂␈↓↓$$B␈↓␈α∂will␈α∂clear␈α∂all␈α∂the
␈↓ ↓H
␈↓ ↓Hbreakpoints.␈α
If␈α
a␈α
breakpoint␈α
setting␈α
command␈α
is␈α
typed␈αwhen␈αall␈αseven␈αbreakpoints␈αare␈αin␈αuse,␈αthen
␈↓ ↓H
␈↓ ↓Hthe␈α
message␈α
␈↓↓?TMB?␈↓␈α
is␈α
typed␈α
and␈α
no␈α
action␈α
is␈α
taken.
␈↓ ↓H

␈↓ ↓H
␈↓α2.2  Starting Programs
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HThe␈α∞command␈α∞␈↓↓addr$G␈↓␈α∞starts␈α∞the␈α∞program␈α∞at␈α∞␈↓↓addr␈↓.␈α∞␈↓↓addr␈↓␈α∞may␈α∞be␈α∞any␈α∞expression␈α∞whose␈α∞value␈α
is␈α
a
␈↓ ↓H
␈↓ ↓Hnon-register␈α∞integer.␈α∞If␈α∞the␈α∞program␈α∞had␈α∞a␈α∞starting␈α∞address␈α∞(i.e.,␈α∞if␈α∞there␈α
was␈α
a␈α
label␈α
after␈α
the␈α
␈↓↓end␈↓
␈↓ ↓H
␈↓ ↓Hstatement␈α∞in␈α∞the␈α∞source␈α∞code)␈α∞then␈α∞the␈α
command␈α
␈↓↓$G␈↓␈α
will␈α
start␈α
the␈α
program␈α
at␈α
its␈α
starting␈α
address.
␈↓ ↓H
␈↓ ↓HFinally,␈αthe␈αcommand␈α␈↓↓addr$$G␈↓␈αwill␈αstart␈αthe␈αprogram␈αat␈α␈↓↓addr␈↓␈αand␈αwill␈αalso␈αset␈αthe␈αstarting␈αaddress
␈↓ ↓H
␈↓ ↓Hof␈α
the␈α
program␈α
to␈α
␈↓↓addr␈↓␈α
so␈α
that␈α
future␈α
␈↓↓$G␈↓␈α
commands␈α
will␈α
start␈α
the␈α
program␈α
at␈α
this␈α
same␈α
address.
␈↓ ↓H

␈↓ ↓H
␈↓α2.3  Proceeding Programs
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HOnce␈α
a␈α
program␈α
has␈α
been␈α
started␈α
it␈α
may␈α
reenter␈α
DDT␈α
in␈α
two␈α
ways.␈α
First␈α
it␈α
may␈α
hit␈α
a␈α
breakpoint␈α
and
␈↓ ↓H
␈↓ ↓Hsecond␈α
it␈α
may␈α
transfer␈α
to␈α
DDT's␈α
starting␈α
address,␈α
which␈α
at␈α
this␈α
time␈α
is␈α
50000␈α
(octal)␈α
although␈αthis
␈↓ ↓H
␈↓ ↓Hmay␈α⊃change␈α⊃when␈α⊃the␈α⊃map␈α⊃"arrives".␈α⊃If␈α⊃DDT␈α⊃is␈α⊃entered␈α⊃via␈α⊃a␈α⊃breakpoint,␈α⊃DDT␈α⊃will␈α⊂type␈α⊂the
␈↓ ↓H
␈↓ ↓Hbreakpoint␈α⊃number␈α⊃followed␈α⊃by␈α⊃the␈α⊃instruction␈α⊃at␈α⊃that␈α⊃address␈α⊃followed␈α⊃by␈α⊃the␈α⊂contents␈α⊂of␈α⊂the
␈↓ ↓H
␈↓ ↓Hlocation␈αthat␈αwas␈αin␈αparentheses␈αin␈αthe␈αbreakpoint␈αcommand.␈αThe␈αprogram␈αmay␈αbe␈αproceeded␈αwith
␈↓ ↓H
␈↓ ↓Hthe␈α∀␈↓↓$P␈↓␈α∪command,␈α∪which␈α∪will␈α∪resume␈α∪execution␈α∪at␈α∪the␈α∪interrupted␈α∪instruction.␈α∪There␈α∪are␈α∪two
␈↓ ↓H
␈↓ ↓Hvariations␈α
on␈α
this␈α
command.␈α
First,␈α
␈↓↓n$P␈↓␈α
will␈α
proceed␈α
from␈αthis␈αbreakpoint␈α␈↓↓n␈↓␈αtimes;␈αhowever,␈αit␈αwill
␈↓ ↓H
␈↓ ↓Hbreak␈α∞at␈α∞any␈α∞other␈α∞breakpoint␈α∞it␈α∞may␈α∞hit␈α
before␈α
the␈α
␈↓↓n␈↓␈α
times␈α
are␈α
up.␈α
After␈α
breaking␈α
the␈α
␈↓↓n␈↓th␈α
time,
␈↓ ↓H
␈↓ ↓Hcontrol␈αwill␈αstay␈αin␈αDDT␈αas␈αif␈αit␈αhad␈αhit␈αthat␈αbreakpoint␈αnormally.␈αThe␈αsecond␈αform␈αis␈α␈↓↓$$P␈↓␈αwhich
␈↓ ↓H
␈↓ ↓Hwill␈αproceed␈αall␈αbreakpoints␈αindefinitely.␈αHowever,␈αthe␈αstandard␈αbreakpoint␈αinformation␈αis␈αtyped␈αout
␈↓ ↓H
␈↓ ↓Hat␈αeach␈αbreakpoint␈αand␈αthe␈αprocess␈αmay␈αbe␈αstopped␈αby␈αtyping␈αany␈αcharacter␈αat␈αDDT␈α(the␈αcharacter
␈↓ ↓H
␈↓ ↓Hitself␈αis␈αignored).␈αIf␈αDDT␈αis␈αentered␈αby␈αtransferring␈αto␈αits␈αstarting␈αaddress,␈αthen␈αproceeding␈αis␈αillegal.
␈↓ ↓H
␈↓ ↓HProceeding␈α∪is␈α∪legal␈α∪after␈α∪having␈α∪single␈α∪stepped␈α∪(see␈α∪next␈α∪section).␈α∪There␈α∪is␈α∪a␈α∪second␈α∪proceed
␈↓ ↓H
␈↓ ↓Hcommand␈αincluded␈αfor␈αconvenience.␈αTyping␈α␈↓↓↑P␈↓␈αhas␈αthe␈αeffect␈α
of␈α
planting␈α
a␈α
breakpoint␈α
at␈α
.␈α
and␈α
then
␈↓ ↓H
␈↓ ↓Hproceeding.␈α
The␈α
breakpoint␈α
will␈α
be␈α
automatically␈α
removed␈α
when␈α
it␈α
is␈α
hit.
␈↓ ↓H

␈↓ ↓H
␈↓α2.4  Single Stepping
␈↓ ↓H

␈↓ ↓H
␈↓␈↓ ↓HAfter␈αa␈αprogram␈αhits␈αa␈αbreakpoint,␈αit␈αis␈αsometimes␈αdesirable␈αto␈α
examine␈α
the␈α
action␈α
of␈α
the␈α
code␈α
on␈α
an
␈↓ ↓H
␈↓ ↓Hinstruction␈α∂by␈α∂instruction␈α∂basis.␈α∂It␈α∂would␈α∂be␈α∂cumbersome␈α∂to␈α∂plant␈α∞breakpoints␈α∞at␈α∞each␈α∞succeeding
␈↓ ↓H
␈↓ ↓Hinstruction,␈αproceed␈αand␈αthen␈αremove␈αthe␈αbreakpoints.␈αTo␈αease␈αthis␈αproblem,␈αa␈αsingle␈αstep␈αfeature␈αis
␈↓ ↓H
␈↓ ↓Hprovided.␈αTyping␈α␈↓↓↑X␈↓␈αwill␈αexecute␈αthe␈αnext␈αsequential␈αinstruction,␈αafter␈αwhich␈αit␈αtypes␈αthe␈αnew␈αvalue
␈↓ ↓H
␈↓ ↓Hof␈α
the␈α
PC␈α
and␈α
the␈α
next␈α
instruction␈α
to␈α
be␈α
executed.␈α
The␈α
value␈α
of␈α
.␈α
is␈αnot␈αchanged.␈αThe␈αcommands
␈↓ ↓H
␈↓ ↓H␈↓↓↑N␈↓␈αand␈α␈↓↓↑S␈↓␈αare␈αexactly␈αthe␈αsame␈α
as␈α
␈↓↓↑X␈↓.␈α
Single␈α
stepping␈α
is␈α
legal␈α
only␈α
after␈α
having␈α
hit␈α
a␈α
breakpoint␈α
or
␈↓ ↓H
␈↓ ↓Hafter␈α
having␈α
single␈α
stepped.␈α
In␈α
particular,␈α
it␈α
is␈α
not␈α
legal␈α
after␈α
entering␈α
DDT␈α
at␈α
its␈α
starting␈α
address.
␈↓ ↓H